import java.awt.*;
import java.awt.event.*;

import javax.swing.*;



public class Mapeamento extends JPanel implements MouseListener,MouseMotionListener {

    private Integer posX;
    private Integer posY;
	private String pecaControle;
    private String img1;
    //Colocar as prximas imagens a serem exibidas
    private String img2;
    private String img3;
    private String img4;
    private String img5;
    private String img6;
    private String img7;
    private String img8;
    private String img9;
    private String img10;
    private String img11;
    private String img12;
    private String img13;
    private String img14;
    private String img15;
    private String img16;
    private String img17;
    //Cabou seo, se precisar de mais, coloque mais, sobrando, retire algumas
    
    
    // colocar mundo ao qual pertence o mapeamento
    
    private Mundo mu;
	private int C = 1;
 
   

    public Mapeamento(String a1, Integer X, Integer Y, String pc, String a2, String a3, String a4, String a5, String a6, String a7, String a8, String a9, String a10, String a11, String a12, String a13, String a14, String a15, String a16, String a17, Mundo m)
    {
    	
    	
    	pecaControle = pc;
    	//Aqui vo as imagens pra poder ir trocando, se precisar de mais, coloque
    	//aqui, mas no esquea de colocar nos parmetros tambm!!
    	img1 = a1;
    	img2 = a2;
    	img3 = a3;
    	img4 = a4;
    	img5 = a5;
    	img6 = a6;
    	img7 = a7;
    	img8 = a8;
    	img9 = a9;
    	img10 = a10;
    	img11 = a11;
    	img12 = a12;
    	img13 = a13;
    	img14 = a14;
    	img15 = a15;
    	img16 = a16;
    	img17 = a17;
    	posX = X;
    	posY = Y ;
    	mu = m;
    	this.addMouseListener(this);
    	this.addMouseMotionListener(this);
    }

    public String getParteControle()
    {

    	return pecaControle;
    }

    public void acerto()
    {
    	C += 1;
    }

    public void trocaMape()
    {

    	   		
    		//substituir a atribuio de parteControle pelos tipos certos
    		//das imagens
    		switch (C)
    		{
    		case 2:
    		{
    			this.pecaControle = "pc1";
    			this.img1 = img2;
    			mu.setImage(this);
    			
    			break;

    		}
    		case 3:
    		{
    			this.pecaControle = "pc2";
    			this.img1 = img3;
    			mu.setImage(this);
    			break;

    		}
    		case 4:
    		{
    			this.pecaControle = "pc3";
    			this.img1 = img4;
    			mu.setImage(this);
    			break;

    		}
    		case 5:
    		{
    			this.pecaControle = "pc4";
    			this.img1 = img5;
    			mu.setImage(this);
    			break;

    		}
    		case 6:
    		{
    			this.pecaControle = "pc5";
    			this.img1 = img6;
    			mu.setImage(this);
    			break;

    		}
    		case 7:
    		{
    			this.pecaControle = "pc6";
    			this.img1 = img7;
    			mu.setImage(this);
    			break;

    		}
    		case 8:
    		{
    			this.pecaControle = "pc7";
    			this.img1 = img8;
    			mu.setImage(this);
    			break;

    		}
    		case 9:
    		{
    			this.pecaControle = "pc8";
    			this.img1 = img9;
    			mu.setImage(this);
    			break;

    		}
    		case 10:
    		{
    			this.pecaControle = "pc9";
    			this.img1 = img10;
    			mu.setImage(this);
    			break;

    		}
    		case 11:
    		{
    			this.pecaControle = "pc10";
    			this.img1 = img11;
    			mu.setImage(this);
    			break;

    		}
    		case 12:
    		{
    			this.pecaControle = "pc11";
    			this.img1 = img12;
    			mu.setImage(this);
    			
    			break;

    		}
    		case 13:
    		{
    			this.pecaControle = "pc12";
    			this.img1 = img13;
    			mu.setImage(this);
    			break;

    		}
    		case 14:
    		{
    			this.pecaControle = "pc13";
    			this.img1 = img14;
    			mu.setImage(this);
    			break;

    		}
    		case 15:
    		{
    			this.pecaControle = "pc14";
    			this.img1 = img15;
    			mu.setImage(this);
    			break;

    		}
    		case 16:
    		{
    			this.pecaControle = "pc15";
    			this.img1 = img16;
    			mu.setImage(this);
    			break;

    		}
    		case 17:
    		{
    			this.pecaControle = "pc16";
    			this.img1 = img17;
    			mu.setImage(this);
    			break;

    		}
    		default:
    		{
    			//No sei o que deve acontecer quando o jogo terminar,
    			//Favor passar na reunio
    			System.out.println("Jogo acabou!");
    			break;

    		}
    		


    		}
    	
    	//Aqui deve ser posto um else pra gerar erros e preserveraes.
    	//Precisaria do banco de dados do phidias, eu acho, portanto no fiz.
    	//Me desculpem!
    		
    		System.out.println(pecaControle);
    }
    
 	public void mouseDragged(MouseEvent e)
	{

	}
	
	public void mouseExited(MouseEvent e)
	{
	
	}
	
	public void mouseMoved(MouseEvent e)
	{
		
	}
	
	public void mouseEntered(MouseEvent e)
	{
		
	}
	
	public void mouseClicked(MouseEvent e)
	{
		
	}
	
	public void mouseReleased(MouseEvent e)
	{

	}
	
	public void mousePressed(MouseEvent e)
	{

	}
	public String getImagem()
	{
		return img1;
	}  
	public int getX()
	{
		return posX;
	}
	
	public int getY()
	{
		return posY;
	}
}